package com.ssy.lingxi.marketing.model.bo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Positive;
import java.math.BigDecimal;
import java.util.List;

/**
 * 组合促销 - BO
 * @author fhj
 * @date 2021/06/17
 * @version 2.0.0
 */
@EqualsAndHashCode(callSuper = true)
@Data
@ApiModel(value = "8",description = "组合促销")
public class CombinationBO extends ActivityDefinedBO{

    private static final long serialVersionUID = -3144708068487763113L;
    /**
     * 优惠规则 - 数量
     * */
    @Positive(message = "优惠规则数量要大于0")
    @ApiModelProperty(dataType ="float",value = "优惠规则 - 数量")
    private Integer num;

    /**
     * 优惠规则 - 金额
     * */
    @Positive(message = "优惠规则金额要大于0")
    @ApiModelProperty(dataType ="float",value = "优惠规则 - 金额")
    private BigDecimal price;

    /**
     * 允许叠加活动类型：6-赠送促销，13-换购
     * */
    @ApiModelProperty(dataType ="array:integer",value = "允许叠加活动类型")
    private List<Integer> allowActivity;

    /**
     * 是否允许叠加优惠劵
     * */
    @NotNull(message = "是否允许叠加优惠劵不能为空")
    @ApiModelProperty(dataType ="boolean",value = "是否允许叠加优惠劵")
    private Boolean allowCoupon;

    /**
     * 超限规则：1-原价购买 2-不可购买
     * */
    @ApiModelProperty(dataType ="integer",value = "超限规则：1-原价购买 2-不可购买")
    private Integer exceedRule;

    /**
     * 活动描述
     * */
    @ApiModelProperty(dataType ="string",value = "活动描述")
    private String describe;


}